package com.bruce.ai.alibaba.common.properties;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * Agent 配置属性类
 * 使用 @ConfigurationProperties 注解映射 application.yml 中的 agent 配置项
 */
@Component
@ConfigurationProperties(prefix = "agent")
public class AgentProperties {

    /**
     * Agent 服务名称
     */
    private String serviceName = "asurada-agent";

    /**
     * Agent 描述信息
     */
    private String description = "Asurada Agent for A2A communication";

    /**
     * Agent 版本号
     */
    private String version = "1.0.0";

    /**
     * Agent 技能列表
     */
    private String skills = "general,testing";

    /**
     * Agent 提供商
     */
    private String provider = "Asurada";

    // Getter 和 Setter 方法

    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public String getSkills() {
        return skills;
    }

    public void setSkills(String skills) {
        this.skills = skills;
    }

    public String getProvider() {
        return provider;
    }

    public void setProvider(String provider) {
        this.provider = provider;
    }

    @Override
    public String toString() {
        return "AgentProperties{" +
                "serviceName='" + serviceName + '\'' +
                ", description='" + description + '\'' +
                ", version='" + version + '\'' +
                ", skills='" + skills + '\'' +
                ", provider='" + provider + '\'' +
                '}';
    }
}